Cable-modem systems include bi-directional communications between a Cable Modem Termination System (CMTS) and a plurality of Cable Modems (CMs). During normal operation, the CMTS sends sequences of MPEG Frames to each CM. The MPEG Frames include Media Access Control (MAC) packets. One important type of MAC Packet is the SYNC packet. SYNC packets permit Cable Modems (CMs) to synchronize their local clock (the CM clock) with the CMTS clock.
To illustrate the synchronization process by way of example, assume that the CMTS sends for receipt by a particular CM a SYNC packet with the SYNC Time Value T1. The CM receives the SYNC packet sometime thereafter. Functionality the CM must recognize and isolate the SYNC packet to obtain the T1 time stamp, determine the SYNC Arrival Time T2 when the SYNC packet was received based on the xe2x80x9ccurrentxe2x80x9d state of the CM clock, evaluate the difference between T1 and T2 to determine the clock skew between the CM clock and the CMTS timing, and use the clock skew to synchronize the CM clock.
Conceptually, the synchronization process attempts to make the SYNC Arrival Time and the SYNC Time Value identical. When this is achieved, the CM Clock is considered xe2x80x9csynchronizedxe2x80x9d with the timing of the CMTS. This approach is a simplifying abstraction that permits the CMTS to make references to particular timeslots without regard to the actual propagation delays between the CMTS and the CM, which vary for each individual CM. Since each CM clock is kept synchronized in the above manner, the CMs interpret the timeslot references of the CMTS in a system-wide compatible manner. Thus within the maximum operating distance specification for the system, The explicit delay between the CM clock and the CMTS clock is ignored.
The process of recognizing and isolating SYNC packets within the various MPEG frames and MAC packets is referred to hereinafter as SYNC parsing. A key distinction in prior art approaches to clock synchronization has been whether SYNC parsing if performed primarily in hardware or software. The key benefit of hardware SYNC parsing is that the SYNC data may be applied immediately to synchronize the CM clock. However, hardware SYNC parsing is expensive. The key benefit of software SYNC parsing is that it is considerably less expensive than the hardware approach. Unfortunately, if the Cable Modem handles the SYNC parsing solely in software, a non-deterministic interval exists between when the SYNC packet actually arrives (at time T2) and when the Cable Modem can determine and record the arrival, at some later time T3. Therefore, software SYNC parsing is never accurate.
What is needed is an approach to Cable Modem clock synchronization that achieves the cost benefits of software SYNC parsing with the time accuracy of hardware SYNC parsing.